from enum import Enum
class WindowSettings:
    name = ''
    width = 720
    height = 720
    outdoorScale = 20
class SceneSettings:
    tileXnum = 96
    tileYnum = 128
    tileWidth = tileHeight = 40
class GamePath:
    spirit_attack=[r'.\assets\monster\spirit\attack\0.png']
    spirit_idle=[r'.\assets\monster\spirit\idle\0.png',
                r'.\assets\monster\spirit\idle\1.png',
                r'.\assets\monster\spirit\idle\2.png',
                r'.\assets\monster\spirit\idle\3.png',]
    
    spirit_move=[r'.\assets\monster\spirit\move\0.png',
                 r'.\assets\monster\spirit\move\1.png',
                 r'.\assets\monster\spirit\move\2.png',
                 r'.\assets\monster\spirit\move\3.png',]
    eye_beast_attack=[r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack1.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack2.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack3.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack4.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack5.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack6.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack7.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack8.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack9.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack10.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack11.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack12.png',
                      r'.\assets\Evil Eye Beast\Attack\Eye Beast Attack13.png'

                      ]
    eye_beast_idle=[r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle1.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle2.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle3.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle4.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle5.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle6.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle7.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle8.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle9.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle10.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle11.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle12.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle13.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle14.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle15.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle16.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle17.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle18.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle19.png',
                    r'.\assets\Evil Eye Beast\Idle\Eye Beast Idle20.png'
                    ]
    eye_beast_move=[r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving1.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving2.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving3.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving4.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving5.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving6.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving7.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving8.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving9.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving10.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving11.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving12.png',
                    r'.\assets\Evil Eye Beast\Movement\Eye Beast Moving13.png']
    bullets_projectile=[r'.\assets\Evil Eye Beast\Void Ball Projectilep\Void Ball Projectile1.png',
                        r'.\assets\Evil Eye Beast\Void Ball Projectilep\Void Ball Projectile2.png',
                        r'.\assets\Evil Eye Beast\Void Ball Projectilep\Void Ball Projectile3.png'
                        ]
    bullets_destroyed=[r'.\assets\Evil Eye Beast\Void Ball Projectilep\Projectile Destroyed1.png',
                       r'.\assets\Evil Eye Beast\Void Ball Projectilep\Projectile Destroyed2.png',
                       r'.\assets\Evil Eye Beast\Void Ball Projectilep\Projectile Destroyed3.png']
    ground = [r'.\assets\map1\ground1.jpg',
              r'.\assets\map1\ground2.jpg',
              r'.\assets\map1\ground3.jpg',
              r'.\assets\map1\ground4.jpg',
              r'.\assets\map1\ground5.jpg',
              r'.\assets\map1\ground6.jpg',
              ]
    obstacle = [r'.\assets\map1\obstacle0.png',
                 r'.\assets\map1\obstacle1.png',
                 r'.\assets\map1\obstacle3.png',
                 ]
    void = [r'.\assets\map1\void.jpg']
    wall = [r'.\assets\map1\wall2.png',
            r'.\assets\map1\wall1.png']
    player_walk_up =[f'assets/sprites/player/up/up_0.png',
                  f'assets/sprites/player/up/up_1.png',
                  f'assets/sprites/player/up/up_2.png',
                  f'assets/sprites/player/up/up_3.png']
    player_walk_down =[f'assets/sprites/player/down/down_0.png',
                  f'assets/sprites/player/down/down_1.png',
                  f'assets/sprites/player/down/down_2.png',
                  f'assets/sprites/player/down/down_3.png']
    player_walk_left =[f'assets/sprites/player/left/left_0.png',
                  f'assets/sprites/player/left/left_1.png',
                  f'assets/sprites/player/left/left_2.png',
                  f'assets/sprites/player/left/left_3.png']
    player_walk_right =[f'assets/sprites/player/right/right_0.png',
                  f'assets/sprites/player/right/right_1.png',
                  f'assets/sprites/player/right/right_2.png',
                  f'assets/sprites/player/right/right_3.png']
    player_attack = [f'assets/sprites/player/up_attack/attack_up.png',
                        f'assets/sprites/player/down_attack/attack_down.png',
                        f'assets/sprites/player/left_attack/attack_left.png',
                        f'assets/sprites/player/right_attack/attack_right.png']
    player_idle = [f'assets/sprites/player/up_idle/idle_up.png',
                     f'assets/sprites/player/down_idle/idle_down.png',
                     f'assets/sprites/player/left_idle/idle_left.png',
                     f'assets/sprites/player/right_idle/idle_right.png']
    menu = r'.\assets\origin\我的知更鸟.jpg'
    font = r'.\assets\origin\字体.ttf'
    origin_song = r'.\assets\origin\歌.mp3'
    gold = r'.\assets\origin\gold.jpg'
    R_C= r'.\assets\origin\R-C.jpg'
    R_C_1 = r'.\assets\origin\heart.jpg'
    tp = r'.\assets\tp.png'
class GameState(Enum):
    MAIN_MENU = 1
    GAME_PLAY_WILD = 6

class PlayerSettings:
    speed = 300
    health=100
    attack_damage=20
class MapSettings:
    Room_x = 15
    zoulang_x = 10
    
    line1 = [0 for i in range(3+3*Room_x+3*zoulang_x)]+[1 for i in range(Room_x+2)]+[0 for i in range(128-3-4*Room_x-3*zoulang_x)]
    line2 = [0,0,0]+[1 for i in range(Room_x)]+[0 for i in range(zoulang_x)]+[1 for i in range(Room_x)]+[0 for i in range(zoulang_x)]+[1 for i in range(Room_x)]+[0 for i in range(zoulang_x)]+[1]+[2 for i in range(Room_x)]+[1]+[0 for i in range(128-3-4*Room_x-3*zoulang_x)]
    line3 = [0,0,0]+[1]+[2 for i in range (Room_x-2)]+[1]+[0 for i in range(zoulang_x)]+[1]+[2 for i in range (Room_x-2)]+[1]+[0 for i in range(zoulang_x)]+[1]+[2 for i in range (Room_x-2)]+[1]+[0 for i in range(zoulang_x)]+[1]+[2 for i in range (Room_x)]+[1]+[0 for i in range(128-3-4*Room_x-3*zoulang_x)]
    line4 = [0,0,0]+[1]+[2 for i in range(Room_x-2)]+[1 for i in range(zoulang_x+2)]+[2 for i in range (Room_x-2)]+[1 for i in range(zoulang_x+2)]+[2 for i in range (Room_x-2)]+[1 for i in range(zoulang_x+2)]+[2 for i in range (Room_x)]+[1]+[0 for i in range(128-3-4*Room_x-3*zoulang_x)]
    line5 = [0,0,0]+[1]+[2 for i in range(Room_x*4+zoulang_x*3)]+[1]+[0 for i in range(128-3-4*Room_x-3*zoulang_x)]
    matrix =    [line1,
                 line2,
                 line3,
                 line3,line3,line3,             
                 line4,
                 line5,line5,line5,line5,
                 line4,
                 line3,line3,line3,
                 line3, 
                 line2,line1]
    Room_0 = {'x1':3,'y1':1,'x2':3+Room_x,'y2':1+15}
    Room_1 = {'x1':3+Room_x+zoulang_x,'y1':1,'x2':3+2*Room_x+zoulang_x,'y2':1+15}
    Room_2 = {'x1':3+2*Room_x+2*zoulang_x,'y1':1,'x2':3+3*Room_x+2*zoulang_x-1,'y2':1+15}
    Room_3 = {'x1':3+3*Room_x+3*zoulang_x,'y1':0,'x2':3+4*Room_x+3*zoulang_x,'y2':18}
class tpsettings():
    tpheight = 40
    tpwidth = 40
class tpimagepath():
    tp = r'.\assets\tp.png'
monster_data = {
    "spirit":{'health': 100,'exp':110,'damage':8, 'speed': 30, 'resistance': 3, 'attack_radius': 10, 'notice_radius': 350},
    "eye_beast": {'health': 500, 'exp': 150, 'damage': 40, 'speed': 30, 'resistance': 2,  'notice_radius': 300,'attack_radius': 500}
}



                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
             